package com.cw2.structural.proxy.jdk;

import java.util.Arrays;

/**
 *  jdk动代理模式
 *  被代理对象必须要有接口
 */
public class MainTest {
    public static void main(String[] args) {
        MaiTikTok leiTikTok = new LeiTikTok();
        // 创建代理对象
        MaiTikTok maiTikTok = JdkTiktokProxy.getProxy(leiTikTok);

        // 执行tiktok方法会执行代理方法
        maiTikTok.tiktok();

        System.out.println();

        // 执行sell方法也会执行该方法一遍
        ((SellTikTok)maiTikTok).sell();

        System.out.println(Arrays.asList(maiTikTok.getClass().getInterfaces()));
    }
}
